Spatial gradients are necessary in many scientific methods including in gradient-based optimizations. Prior art suggests two primary approaches of analytical and finite-difference based gradient computations in 3D solid modeling. An analytical approach, although more accurate, is not sufficiently scalable and may not be even possible for some solid modeling operations (such as Booleans) performed when creating 3D CAD models for solids. Finite difference based gradient computation, on the other hand, first correlates two states (original and ‘changed’ due to a change in a defining parameter value of the model) of a 3D CAD model and computes the spatial difference between them at several points on the model surfaces.